嗨!各位朋友大家好,打給後,歹嘎吼,胎尬喉,我是阿圓,開始之前先放張喬巴,來撫慰心靈~
一般來說在專案開發的時候,會將網站的功能轉化成,user story ,也就是利用簡短的方式,將功能描述出來,最常見到的寫法就是:
(某個角色) 能夠做到(某種功能),以達到(商業價值)
As a (role of user), I want (some feature) so that (some business value).
例如:身為使用者,我可以新增、修改以及刪除貼文
雖然簡易的個人部落格是不太需要這件事情的,不過對於一個新手來說,還是來練習寫寫看吧!
身為使用者,我可以:
身為訪客,我可以:
在我學習的過程中,寫user story這件事好像變成是一種既定的流程...
在解答這個問題之前,先問問自己,知道什麼叫做敏捷開發或是Scrum嗎?
好吧,兩個月前的我的確不知道...。
在軟體開發的模式上,目前常常聽到的就是敏捷式開發(Agile),(另一種則是瀑布式開發(Waterfall)),是一種:以人為本,強調團隊間的合作互動的開發方式,wiki上講到:
是一種應對快速變化的需求的一種軟體開發能力。相對於「非敏捷」,更強調程式設計師團隊與業務專家之間的緊密協同運作、面對面的溝通、頻繁交付新的軟體版本、緊湊而自我組織型的團隊、能夠很好地適應需求變化的代碼編寫和團隊組織方法,也更注重軟體開發過程中人的作用。
而Scrum就是實現敏捷式開發的一種方法,採用小增量,多迭代,尋求回饋為核心價值。
若對上面不太了解的可以看看wiki跟這幾篇文章:
深入淺出「敏捷軟體開發:Scrum」(上)
深入淺出「敏捷軟體開發:Scrum」(中)
深入淺出「敏捷軟體開發:Scrum」(下)
好,話題扳回來,在scrum的開發模式下,會要求把功能拆成細項,並寫成指定的格式,而格式就是我們上面所提到的:
As a (role of user), I want (some feature) so that (some business value).
這是敏捷開發非常重要的一環,可以將功能拆分成有創造價值的區塊,每個區塊又各自獨立,十分利於管理!(還可以標註優先權!)
寫到最後來幫大家統整一下,為什麼要寫user story呢?
將功能寫成 user story 的方式,可以將功能拆分成細項,讓團隊實現小增量的提交,也能讓團隊便於管理專案的進度(通常會配合看板一起使用!)
雖然這一篇跟 rails 好像沒什麼關係,不過在專案開發還是會碰到,就請各位大大見諒一下
謝謝各位,我們明天再見!
參考文章:
ihower
深入淺出「敏捷軟體開發:Scrum」(上)
深入淺出「敏捷軟體開發:Scrum」(中)
深入淺出「敏捷軟體開發:Scrum」(下)